The invention relates to the art of digital printing systems, and specifically to a flexible, configurable technique for providing useful print job status information to the printing system operator and to job supervisory and support devices.
Digital printing systems can be as simple as an office laser printer or can be room size devices that include a plurality of system modules such as paper feeders, mark facilities (for example a black and white print engine and a color print engine), collators, staplers and shrink wrappers. Digital printing systems can even be comprised of networked devices located remotely from one another such as in an on-demand publishing system.
During the printing of large jobs, such as the printing, collating, stapling and shrink wrapping of, for example 400 copies of a 50 page document that may include a plurality of color pages, it would be useful to provide feedback about the progress of the job to, for example, the press operator. This information may be presented in the form of counters, progress bars, or some other representation. The operator can use this information to ensure proper system performance, and to determine when to initiate other events such as the submission of new jobs or the control of other devices.
In some systems, there is a tight coupling between the platform controlling the user interface and that performing print engine control. Indeed in many cases these functions are handled by the same computing platform. Where this is the case, status information is readily available to the user interface.
In some newer, more open and modular printing architectures, however, a first computing platform, for example, the user interface or digital front end, is not intimately involved in the actual printing process and therefore, is not directly aware of print job progress. Instead, based on a document description it receives from the digital front end, a second computing platform, typically a mark facility controller, performs the scheduling and control of the print job. In these systems, the digital front end, submits a document assembly tree to the mark facility controller. The mark facility controller then manages the job through completion, determining the optimal use of feeding, marking, and finishing resources.
A document assembly tree is a digitally coded outline describing a documents production properties. The mark facility controller receives a document assembly tree and scans it to determine which sheets, for example, call for high resolution printing, which, if any, require the services of a color mark facility, which, can be printed in low resolution etc. The mark facility controller determines the source (fax, scanner, computer file etc. . . ) of the content of each sheet and decides the optimum use of resources, so that the job is completed as efficiently as possible. The digital front end places an order for a print job, but is not involved in its production. The mark facility controller orchestrates the entire job.
The document assembly tree concept is scalable. A document assembly tree can represent an entire print job or it can represent a single document within a print job. Of course, an entire print job can consist of only one document.
An example of when a document assembly tree might represent one document within a large print job is during the printing of a mass mailing containing, for example, a sheet that includes the address of the recipient. In this situation, each copy of the mailing is represented by its own document assembly tree. Since the recipient address portion of each document is different, a particular document assembly tree contains information pointing to the source of a particular recipient address to be printed on a particular copy of the mailing.
An example of when a document assembly tree might represent an entire job is when exact copies of the same document are being produced.
In order to communicate status information to the digital front end, some systems implement a simple protocol, where messages are passed from the mark facility controller to the digital front end for each completed sheet. This has been an adequate solution to the problem of status reporting. However, as print engines become faster, sheet by sheet status information is becoming less useful. Furthermore, in distributed architectures, the automatic broadcast of status information after the production of every sheet, can absorb significant portions of the control path bandwidth. Additionally, some status initiated operations such as, the releasing of system resources back to a resource manager, require notification at intervals other than sheets or sets of sheets. A method is needed to allow the submitter of document descriptions, such as a digital front end, to specify the document segments for which progress status is desired and the intervals at which that status is to be reported.
The subject invention relates to a method to extend the document assembly tree mechanism to allow for the requesting and delivery of status information from a mark facility controller or other job coordinating computing platform, to a digital front end at selected points and at selected intervals or points in the printing process.
One aspect of the present invention is a method for using an extended document assembly tree to generate job status reports. The method finds application in an electronic image processing apparatus comprising a plurality of machine modules that together process and/or produce printed media, the method comprises generating a document assembly tree having nodes that describe portions of a job; including in the node descriptions, keywords that specify a status report delivery interval; and, producing the job and status reports as indicated by the document assembly tree.
Another aspect of the present invention is that status reports are sent only for selected portions of a job and only when appropriate for each portion of the job.
One advantage of the present invention is that useful status information is provided to a system operator and/or supervisory devices while minimizing control bus bandwidth consumption.
Another advantage of the present invention is that it allows system resources to be freed for use by a following job or portion of a job when they are no longer required by a current job, while minimizing control bus bandwidth consumption.
Still other advantages of the present invention will become apparent to those of ordinary skill in the art upon reading and understanding the following detailed description of the preferred embodiment.